//import java.lang.reflect.Array;
//import java.util.Arrays;
//import java.util.Comparator;
//import java.util.List;
//
////类名后面带<T>表示当前类是一个泛型
//// 尖括号里面写要存放的类型
//class MyArray<T>{
//    public Object[] array = new Object[10];
//
//    public void set(int pos,Object val){
//        array[pos] = val;
//    }
//
//    public T get(int pos){
//        return (T) array[pos];
//    }
//
//
//
//}
//
////写一个泛型类，实现一个方法，求任意类型数组的最大值
////                   java.long
////class Alg<T extends Comparable<T>>{
////
////    public T getMax(T[] array){
////        T max = array[0];
////        for(int i=1;i<array.length;i++){      //array[i] > max错误，对象不能直接比较，要实现Compartor接口
////            if (array[i].compareTo(max) > 0){
////                max = array[i];
////            }
////        }
////        return max;
////
////    }
////
////}
//
////泛型方法
//class Alg{
//
//    public<T extends Comparable> T getMax(T[] array){
//        T max = array[0];
//        for(int i=1;i<array.length;i++){
//            if (array[i].compareTo(max) > 0){
//                max = array[i];
//            }
//        }
//        return max;
//
//    }
//
//}
//
//public class demo2 {
//
//
//    public static void main(String[] args) {
//        Alg alg  = new Alg();
//        Integer[] array = {1,2,3,4,8};
//        System.out.println(alg.getMax(array));
//    }
//
////    public static void main(String[] args) {
////        Alg<Integer> alg = new Alg<>();
////        Integer[] array = {1,2,5,4,3};
////        Integer ret = alg.getMax(array);
////        System.out.println(ret);
////    }
//
//
//
//
//
//
//
////    public static void main(String[] args) {
////        // 在创建类时，尖括号里面写入需要的类型
////        MyArray<String> myArray = new MyArray<>();
////        myArray.set(0,"hello");
////        String str = myArray.get(0);
////
////        MyArray<Integer> myArray2 = new MyArray<>();
////        myArray2.set(0,1);
////        myArray2.set(1,10);
////        Integer a = myArray2.get(1);
////
////    }
//}
